﻿using SheepStorage.Domain.DTO.Output;
using SheepStorage.Domain.Entity;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace SheepStorage.Service.Interface
{
	/// <summary>
	/// 后裔转种服务接口
	/// </summary>
	public interface IProgenyTransferService
	{
		/// <summary>
		/// 后裔转种列表
		/// </summary>
		/// <param name="pageIndex"></param>
		/// <param name="pageSize"></param>
		/// <returns></returns>
		Task<PageOutput<ProgenyTransfer>> GetProgenyTransfers(string startDate, string endDate, string overbit, int pageIndex, int pageSize);

		/// <summary>
		/// 后裔转种添加
		/// </summary>
		/// <param name="progenyTransfer"></param>
		/// <returns></returns>
		Task<int> AddProgenyTransfer(List<ProgenyTransfer> model);


		/// <summary>
		/// 后裔转种逻辑删除/批量删除
		/// </summary>
		/// <param name="TransferId"></param>
		/// <returns></returns>

		Task<int> DeleteProgenyTransfer(List<int> TransferId);


		/// <summary>
		/// 根据id反填信息
		/// </summary>
		/// <param name="TransferId"></param>
		/// <returns></returns>
		    Task<ProgenyTransfer> GetProgenyTransferById(int TransferId);



		/// <summary>
		/// 根据id修改信息
		/// </summary>
		/// <param name="model"></param>
		/// <returns></returns>
		    Task<int> UpdateProgenyTransfer(ProgenyTransfer model);



	}
}
